package com.codes.core.common.enumtype.wordtpl;

/****
 * @param
 * @Description   案件类型
 * @return
 * @Date 2020/7/4 15:03
 * @Created by peanut
 */
public enum CaseTypeEnum {


    /**
     *
     1 载质量 2 几何 3 年检
     4 动态监控 5 改装 6 环保
     7 线路
     */
    //模板对应的 表
    zaizhiliang(1,"载质量"),
    jihe(2,"几何"),
    nianjian(3,"年检"),
    jiankong(4,"动态监控"),
    gaizhuang(5,"改装"),
    huanbao(6,"环保"),
    xianlu(7,"线路"),

    end(999999 ,"最后的莫西干人");



    /** code */
    private int code;

    /** 显示标签 */
    private String label;

    /**
     * 构造器，必须私有
     * @param code
     */
    CaseTypeEnum(int code, String label){
        this.code = code;
        this.label = label;
    }

    /**
     * 获取code的文本
     * @param code
     * @return
     */
    public static String getLabelByCode (int code){
        for (CaseTypeEnum enuma : CaseTypeEnum.values()){
            if (enuma.getCode() == code){
                return enuma.getLabel();
            }
        }
        return "未知枚举项";
    }
    /**
     * 根据文本获取code
     */
    public static int getCodeByLabel(String label){
        for(CaseTypeEnum enuma : CaseTypeEnum.values()){
            if(enuma.getLabel().equals(label)){
                return enuma.getCode();
            }
        }
        return -1;

    }

    /**
     * 根据code获取枚举
     */
    public static CaseTypeEnum getRoleByCode(int code){
        for(CaseTypeEnum enuma : CaseTypeEnum.values()){
            if(enuma.getCode() == code){
                return enuma;
            }
        }
        return null;
    }

    public String toString(){
        return label;
    }

    public String getLabel() {
        return label;
    }

    public int getShort(){
        return this.code;
    }

    public int getCode(){
        return this.code;
    }


}
